package top.jiangqiang.qyblog.core.domain.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import top.jiangqiang.qyblog.core.base.entity.BaseEntityVo;

import java.io.Serial;
import java.io.Serializable;

/**
 * 文件dto
 *
 * @author jiangqiang
 * @date 2022-07-31
 */
@Data
public class FileVo extends BaseEntityVo implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    @Schema(description = "文件全局唯一key")
    private String fileKey;

    @Schema(description = "文件访问地址")
    private String url;

    @Schema(description = "文件名，包括后缀")
    private String name;

    @Schema(description = "文件大小")
    private Long size;

    @Schema(description = "存储器配置id")
    private String storageId;

    @Schema(description = "存储器配置")
    private StorageVo storage;

    @Schema(description = "文件MIME类型")
    private String type;

    @Schema(description = "上传状态，1正常，2上传中，3上传失败")
    private Integer state;
}
